from macpath import join

import pymongo #导入pymongo用于处理mongoDB数据库

## ex09：统计walden
##  时间：2017年10月15日
##  难点:学会使用mongodb的find方法

client = pymongo.MongoClient("localhost", 27017) #连接MongoDB
walden = client["walden"] #创建数据库
sheet_tab = walden["sheet_tab"] #创建数据表

### 插入数据函数
def insert_db():
    path = "data\walden.txt"  # 文件的路径
    with open(path, 'r') as f:
        lines = f.readlines()  # 读取每一行文字
        for index, line in enumerate(lines):
            data = {
                "index": index,  # 每行的序号
                "line":"".join(line.strip("\n").split()),  # 每行的内容
                "words": len(line.split())  # 每行的单词数量
            }
            if data["words"] > 0:
                sheet_tab.insert_one(data)
### 显示数据库内的数据
# $lt/$lte/$gt/$gte/$ne，依次等价于</<=/>/>=/!=。（l表示less g表示greater e表示equal n表示not  ）
def show_db():
    for index, item in enumerate(sheet_tab.find({"words":{"$lt":5}})): #获得单词数量少于5的数据
        print(index,item)

# insert_db() #调用函数
show_db()